Optimize render performance across core dashboard views#53
Merged
Conversation
- Eliminate waterfalls: parallelize review page loader fetches, prefetch first page of diff files in route loader, eagerly preload diff chunks - Reduce bundle size: lazy load CommandPalette, GitHubAccessDialog, Agentation, and Markdown in pull request rows - Fix re-render cascades: extract StickyGroupHeader in pulls/issues pages, use ActiveFileStore with useSyncExternalStore for review file tree, extract ReviewToolbar and ReviewSidebar as memoized components, stabilize callbacks with ref patterns, stop history.replaceState on scroll - Add estimated diff height placeholders to prevent layout shift while diffs load on the review page - Add content-visibility to pull/issue group sections - Memo list row components (PullRequestRow, IssueRow, DetailTab)
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
diffkit | 1853fd6 | Commit Preview URL Branch Preview URL |
Apr 10 2026, 07:37 PM |
… re-renders Move statusQuery into a dedicated MergeStatusSection component so polling only re-renders the merge card, not the header, body, timeline, or sidebar. Also guard Shiki theme registration to prevent duplicate registration warnings.
stylessh
added a commit
that referenced
this pull request
Apr 18, 2026
* Optimize core view performance across dashboard - Eliminate waterfalls: parallelize review page loader fetches, prefetch first page of diff files in route loader, eagerly preload diff chunks - Reduce bundle size: lazy load CommandPalette, GitHubAccessDialog, Agentation, and Markdown in pull request rows - Fix re-render cascades: extract StickyGroupHeader in pulls/issues pages, use ActiveFileStore with useSyncExternalStore for review file tree, extract ReviewToolbar and ReviewSidebar as memoized components, stabilize callbacks with ref patterns, stop history.replaceState on scroll - Add estimated diff height placeholders to prevent layout shift while diffs load on the review page - Add content-visibility to pull/issue group sections - Memo list row components (PullRequestRow, IssueRow, DetailTab) * Reduce diff files page size from 50 to 25 for faster initial load * Isolate merge status polling from PullDetailPage to prevent full-page re-renders Move statusQuery into a dedicated MergeStatusSection component so polling only re-renders the merge card, not the header, body, timeline, or sidebar. Also guard Shiki theme registration to prevent duplicate registration warnings.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
@pierre/diffschunks at module scopeStickyGroupHeaderin pulls/issues pages to isolate sticky state, replaceactiveFileuseState withActiveFileStore+useSyncExternalStorefor surgical file tree updates, extract memoizedReviewToolbar/ReviewSidebar, stabilize callbacks with ref patterns, removehistory.replaceStatefrom scroll observer to stop topbar re-renderscontent-visibilityto pull/issue group sectionshasMountedgate on files query (now hasinitialDatafrom loader), remove 250ms artificial timeout for review comments loadingTest plan